#include <iostream>
#include <Eigen/Dense>

using namespace std;
using namespace Eigen;

int main() {
    // 创建系数矩阵 A
    Matrix3d A;
    A << 2, 1, -1,
         -3, -1, 2,
         -2,  1, 2;

    // 创建右侧常数向量 b
    Vector3d b;
    b << 8, -11, -3;

    // 求解线性方程组 Ax=b
    Vector3d x = A.colPivHouseholderQr().solve(b);

    // 打印解向量 x
    std::cout << "Solution x = \n" << x << std::endl;

    return 0;
}
